has-value
Returns true if a value exists, false if empty. Works with deeply nested values using object paths.
Works for:
- booleans
- functions
- numbers (pass
true
as the last arg to treat zero as a value instead of falsey) - strings
- nulls
- object
- arrays
Install
Install with npm
$ npm i has-value --save
Related projects
- get-object: Get a property from an object using dot (object path) notation. | homepage
- get-property: Get a nested property or its value from an object using simple
a.b.c
paths. | homepage - get-value: Use property paths (
a.b.c
) to get a nested value from an object. | homepage - set-value: Create nested values and any intermediaries using dot notation (
'a.b.c'
) paths. | homepage
Usage
Works with nested object paths or a single value:
var hasValue = require('has-value');
hasValue({a: {b: {c: 'foo'}}} 'a.b.c');
hasValue('a');
hasValue('');
hasValue(1);
hasValue(0);
hasValue(0, true);
hasValue({a: 'a'}});
hasValue({}});
hasValue(['a']);
hasValue([]);
hasValue(function(foo) {});
hasValue(function() {});
hasValue(true);
hasValue(false);
isEmpty
To do the opposite and test for empty values, do:
function isEmpty(o, isZero) {
return !hasValue.apply(hasValue, arguments);
}
Contributing
Pull requests and stars are always welcome. For bugs and feature requests, please create an issue.
Running tests
Install dev dependencies:
$ npm i -d && npm test
Author
Jon Schlinkert
License
Copyright © 2014-2015 Jon Schlinkert
Released under the MIT license.
This file was generated by verb-cli on October 30, 2015.